Skip to content

lifecycle.py record: paired dated record for new completions (#71) - #74

Merged
Jammy2211 merged 1 commit into
mainfrom
feature/lifecycle-ship-record
Jul 13, 2026
Merged

lifecycle.py record: paired dated record for new completions (#71)#74
Jammy2211 merged 1 commit into
mainfrom
feature/lifecycle-ship-record

Conversation

@Jammy2211

Copy link
Copy Markdown
Collaborator

Follow-up to #73. Adds lifecycle.py record <slug> [--date] [--prompt] — writes one dated record complete/<YYYY>/<MM>/<slug>.md from its just-appended complete.md entry, folding + removing the active/ prompt. So new completions land as rich dated records (matching the historical split), with complete.md kept and paired 1:1 by slug (check enforces it). Paired with PyAutoBrain ship-skill update. Verified: dry-run + apply round-trip, check green.

🤖 Generated with Claude Code

…71)

lifecycle.py record <slug> [--date] [--prompt] — writes ONE dated record
complete/<YYYY>/<MM>/<slug>.md from its just-appended complete.md entry, folding
+ removing the active/ prompt. Keeps complete.md (the ledger) and the dated
records paired 1:1 by slug; check already enforces the pairing. This is the
go-forward hook so NEW completions land as rich dated records, matching the
historical split. Verified: dry-run + apply round-trip, check green.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@Jammy2211
Jammy2211 merged commit 2bef380 into main Jul 13, 2026
@Jammy2211
Jammy2211 deleted the feature/lifecycle-ship-record branch July 13, 2026 17:09
Jammy2211 pushed a commit that referenced this pull request Jul 14, 2026
…emented+verified, awaiting corrective-PR authorization
Jammy2211 pushed a commit that referenced this pull request Jul 14, 2026
Jammy2211 pushed a commit that referenced this pull request Jul 17, 2026
Jammy2211 added a commit that referenced this pull request Aug 10, 2026
The Mind side of the compile-axis arc, from re-scope to completion records.
All four code PRs are already merged: PyAutoBrain#219 (cd79005),
autolens_profiling#104 (355d555), PyAutoBrain#220 (74d7b1b), PyAutoBrain#222
(a50efc3).

The 2026-07-14 prompt asked the Profiling Agent to measure compile time of the
release-validation heavy scripts so we could speed them up. Both halves of that
framing were spent. The speed-up shipped -- the #71/#74/#77 arc landed the
persistent compilation cache (117.0s -> 2.3s CPU; 5517.8s -> 937.1s A100) and
--xla_gpu_autotune_level=0 (17x on the pathological cold probe), and ruled out
source jit-boundaries by evidence. The release-scripts leg belongs to hygiene's
perf mode by both agents' documented boundaries, having been moved out of
profiling's staged future modes once already.

What survived is regression surveillance: both wins are SETTINGS, so a config
drift or an XLA_FLAGS clobber (the PyAutoNerves#127 failure that went
undetected for two months) puts the 70-minute worst case back with nothing
failing. Split into three sequential phases; the workspace-side
jax_compile_time_profiling.md was absorbed into phase 2, since the dashboard
and the agent reading it are two halves of one thing.

Contains the re-scoped parent prompt (original text preserved for provenance),
three completion records under complete/2026/08/, a regenerated index, and the
absorbed-prompt marker. active.md returns to just the two release drives.

The records preserve the traps, every one of which surfaced by running the
tools against real data rather than from the design:

- cache_dir is non-empty on COLD rows too -- the cold run populates the cache
  -- so warmness cannot be read from it or from the tag
- `hardware` alone pooled a laptop and a 32-core RAL node under one label; the
  first rendered dashboard put pins from both side by side
- pins auto-following the newest row would have baked a regression in
  permanently, reporting all-clear forever
- rows predating a pin are history, not drift
- export_probe.py / trace_profile.py share the results tree with a different
  schema, so their records are not malformed

Also records two corrections to earlier claims in this branch: the sweep grid
is 21 cells rather than 24, and the workspace test that looked red outside CI
was a missing matplotlib rather than a defect.

lifecycle.py check OK; 127 Mind tests pass; all three modes verified end to end
on merged main against the merged workspace.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant